{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "from pandas import DataFrame,Series\n",
    "import pandas as pd\n",
    "import numpy as np\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "outputs": [],
   "source": [
    "def make_df(indexs, columns):\n",
    "    data = [[str(j)+str(i) for j in columns] for i in indexs]\n",
    "    df = pd.DataFrame(data=data, index=indexs, columns=columns)\n",
    "    return df\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "outputs": [
    {
     "data": {
      "text/plain": "    A   B\n1  A1  B1\n2  A2  B2",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>A</th>\n      <th>B</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>1</th>\n      <td>A1</td>\n      <td>B1</td>\n    </tr>\n    <tr>\n      <th>2</th>\n      <td>A2</td>\n      <td>B2</td>\n    </tr>\n  </tbody>\n</table>\n</div>"
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": "    A   B\n3  A3  B3\n4  A4  B4",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>A</th>\n      <th>B</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>3</th>\n      <td>A3</td>\n      <td>B3</td>\n    </tr>\n    <tr>\n      <th>4</th>\n      <td>A4</td>\n      <td>B4</td>\n    </tr>\n  </tbody>\n</table>\n</div>"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df1 = make_df([1, 2], ['A', 'B'])\n",
    "df2 = make_df([3, 4], ['A', 'B'])\n",
    "display(df1, df2)"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "outputs": [
    {
     "data": {
      "text/plain": "    A   B\n1  A1  B1\n2  A2  B2\n3  A3  B3\n4  A4  B4",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>A</th>\n      <th>B</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>1</th>\n      <td>A1</td>\n      <td>B1</td>\n    </tr>\n    <tr>\n      <th>2</th>\n      <td>A2</td>\n      <td>B2</td>\n    </tr>\n    <tr>\n      <th>3</th>\n      <td>A3</td>\n      <td>B3</td>\n    </tr>\n    <tr>\n      <th>4</th>\n      <td>A4</td>\n      <td>B4</td>\n    </tr>\n  </tbody>\n</table>\n</div>"
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "pd.concat([df1,df2])"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "outputs": [
    {
     "data": {
      "text/plain": "     A    B    A    B\n1   A1   B1  NaN  NaN\n2   A2   B2  NaN  NaN\n3  NaN  NaN   A3   B3\n4  NaN  NaN   A4   B4",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>A</th>\n      <th>B</th>\n      <th>A</th>\n      <th>B</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>1</th>\n      <td>A1</td>\n      <td>B1</td>\n      <td>NaN</td>\n      <td>NaN</td>\n    </tr>\n    <tr>\n      <th>2</th>\n      <td>A2</td>\n      <td>B2</td>\n      <td>NaN</td>\n      <td>NaN</td>\n    </tr>\n    <tr>\n      <th>3</th>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>A3</td>\n      <td>B3</td>\n    </tr>\n    <tr>\n      <th>4</th>\n      <td>NaN</td>\n      <td>NaN</td>\n      <td>A4</td>\n      <td>B4</td>\n    </tr>\n  </tbody>\n</table>\n</div>"
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "pd.concat([df1,df2],axis=1)"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "outputs": [
    {
     "data": {
      "text/plain": "    A   B\n0  A1  B1\n1  A2  B2\n2  A3  B3\n3  A4  B4",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>A</th>\n      <th>B</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>0</th>\n      <td>A1</td>\n      <td>B1</td>\n    </tr>\n    <tr>\n      <th>1</th>\n      <td>A2</td>\n      <td>B2</td>\n    </tr>\n    <tr>\n      <th>2</th>\n      <td>A3</td>\n      <td>B3</td>\n    </tr>\n    <tr>\n      <th>3</th>\n      <td>A4</td>\n      <td>B4</td>\n    </tr>\n  </tbody>\n</table>\n</div>"
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "pd.concat([df1,df2],ignore_index=True)\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "outputs": [
    {
     "data": {
      "text/plain": "      A   B\nx 1  A1  B1\n  2  A2  B2\ny 3  A3  B3\n  4  A4  B4",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th></th>\n      <th>A</th>\n      <th>B</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th rowspan=\"2\" valign=\"top\">x</th>\n      <th>1</th>\n      <td>A1</td>\n      <td>B1</td>\n    </tr>\n    <tr>\n      <th>2</th>\n      <td>A2</td>\n      <td>B2</td>\n    </tr>\n    <tr>\n      <th rowspan=\"2\" valign=\"top\">y</th>\n      <th>3</th>\n      <td>A3</td>\n      <td>B3</td>\n    </tr>\n    <tr>\n      <th>4</th>\n      <td>A4</td>\n      <td>B4</td>\n    </tr>\n  </tbody>\n</table>\n</div>"
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "pd.concat([df1,df2],keys=['x','y'])\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "outputs": [
    {
     "data": {
      "text/plain": "    A   B   C   D\n1  A1  B1  C1  D1\n2  A2  B2  C2  D2\n3  A3  B3  C3  D3\n4  A4  B4  C4  D4",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>A</th>\n      <th>B</th>\n      <th>C</th>\n      <th>D</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>1</th>\n      <td>A1</td>\n      <td>B1</td>\n      <td>C1</td>\n      <td>D1</td>\n    </tr>\n    <tr>\n      <th>2</th>\n      <td>A2</td>\n      <td>B2</td>\n      <td>C2</td>\n      <td>D2</td>\n    </tr>\n    <tr>\n      <th>3</th>\n      <td>A3</td>\n      <td>B3</td>\n      <td>C3</td>\n      <td>D3</td>\n    </tr>\n    <tr>\n      <th>4</th>\n      <td>A4</td>\n      <td>B4</td>\n      <td>C4</td>\n      <td>D4</td>\n    </tr>\n  </tbody>\n</table>\n</div>"
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": "    B   C   D   E\n2  B2  C2  D2  E2\n3  B3  C3  D3  E3\n4  B4  C4  D4  E4\n5  B5  C5  D5  E5",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>B</th>\n      <th>C</th>\n      <th>D</th>\n      <th>E</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>2</th>\n      <td>B2</td>\n      <td>C2</td>\n      <td>D2</td>\n      <td>E2</td>\n    </tr>\n    <tr>\n      <th>3</th>\n      <td>B3</td>\n      <td>C3</td>\n      <td>D3</td>\n      <td>E3</td>\n    </tr>\n    <tr>\n      <th>4</th>\n      <td>B4</td>\n      <td>C4</td>\n      <td>D4</td>\n      <td>E4</td>\n    </tr>\n    <tr>\n      <th>5</th>\n      <td>B5</td>\n      <td>C5</td>\n      <td>D5</td>\n      <td>E5</td>\n    </tr>\n  </tbody>\n</table>\n</div>"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df3 = make_df([1, 2, 3, 4], ['A', 'B', 'C', 'D'])\n",
    "df4 = make_df([2, 3, 4, 5], ['B', 'C', 'D', 'E'])\n",
    "display(df3, df4)"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "outputs": [
    {
     "data": {
      "text/plain": "     A   B   C   D    E\n0   A1  B1  C1  D1  NaN\n1   A2  B2  C2  D2  NaN\n2   A3  B3  C3  D3  NaN\n3   A4  B4  C4  D4  NaN\n4  NaN  B2  C2  D2   E2\n5  NaN  B3  C3  D3   E3\n6  NaN  B4  C4  D4   E4\n7  NaN  B5  C5  D5   E5",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>A</th>\n      <th>B</th>\n      <th>C</th>\n      <th>D</th>\n      <th>E</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>0</th>\n      <td>A1</td>\n      <td>B1</td>\n      <td>C1</td>\n      <td>D1</td>\n      <td>NaN</td>\n    </tr>\n    <tr>\n      <th>1</th>\n      <td>A2</td>\n      <td>B2</td>\n      <td>C2</td>\n      <td>D2</td>\n      <td>NaN</td>\n    </tr>\n    <tr>\n      <th>2</th>\n      <td>A3</td>\n      <td>B3</td>\n      <td>C3</td>\n      <td>D3</td>\n      <td>NaN</td>\n    </tr>\n    <tr>\n      <th>3</th>\n      <td>A4</td>\n      <td>B4</td>\n      <td>C4</td>\n      <td>D4</td>\n      <td>NaN</td>\n    </tr>\n    <tr>\n      <th>4</th>\n      <td>NaN</td>\n      <td>B2</td>\n      <td>C2</td>\n      <td>D2</td>\n      <td>E2</td>\n    </tr>\n    <tr>\n      <th>5</th>\n      <td>NaN</td>\n      <td>B3</td>\n      <td>C3</td>\n      <td>D3</td>\n      <td>E3</td>\n    </tr>\n    <tr>\n      <th>6</th>\n      <td>NaN</td>\n      <td>B4</td>\n      <td>C4</td>\n      <td>D4</td>\n      <td>E4</td>\n    </tr>\n    <tr>\n      <th>7</th>\n      <td>NaN</td>\n      <td>B5</td>\n      <td>C5</td>\n      <td>D5</td>\n      <td>E5</td>\n    </tr>\n  </tbody>\n</table>\n</div>"
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "pd.concat([df3,df4])\n",
    "pd.concat([df3,df4],ignore_index=True)"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "outputs": [
    {
     "data": {
      "text/plain": "    B   C   D\n1  B1  C1  D1\n2  B2  C2  D2\n3  B3  C3  D3\n4  B4  C4  D4\n2  B2  C2  D2\n3  B3  C3  D3\n4  B4  C4  D4\n5  B5  C5  D5",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>B</th>\n      <th>C</th>\n      <th>D</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>1</th>\n      <td>B1</td>\n      <td>C1</td>\n      <td>D1</td>\n    </tr>\n    <tr>\n      <th>2</th>\n      <td>B2</td>\n      <td>C2</td>\n      <td>D2</td>\n    </tr>\n    <tr>\n      <th>3</th>\n      <td>B3</td>\n      <td>C3</td>\n      <td>D3</td>\n    </tr>\n    <tr>\n      <th>4</th>\n      <td>B4</td>\n      <td>C4</td>\n      <td>D4</td>\n    </tr>\n    <tr>\n      <th>2</th>\n      <td>B2</td>\n      <td>C2</td>\n      <td>D2</td>\n    </tr>\n    <tr>\n      <th>3</th>\n      <td>B3</td>\n      <td>C3</td>\n      <td>D3</td>\n    </tr>\n    <tr>\n      <th>4</th>\n      <td>B4</td>\n      <td>C4</td>\n      <td>D4</td>\n    </tr>\n    <tr>\n      <th>5</th>\n      <td>B5</td>\n      <td>C5</td>\n      <td>D5</td>\n    </tr>\n  </tbody>\n</table>\n</div>"
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 取列都有的值\n",
    "pd.concat([df3,df4],join=\"inner\")"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "outputs": [
    {
     "data": {
      "text/plain": "    A   B   C   D\n1  A1  B1  C1  D1\n2  A2  B2  C2  D2\n3  A3  B3  C3  D3\n4  A4  B4  C4  D4",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>A</th>\n      <th>B</th>\n      <th>C</th>\n      <th>D</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>1</th>\n      <td>A1</td>\n      <td>B1</td>\n      <td>C1</td>\n      <td>D1</td>\n    </tr>\n    <tr>\n      <th>2</th>\n      <td>A2</td>\n      <td>B2</td>\n      <td>C2</td>\n      <td>D2</td>\n    </tr>\n    <tr>\n      <th>3</th>\n      <td>A3</td>\n      <td>B3</td>\n      <td>C3</td>\n      <td>D3</td>\n    </tr>\n    <tr>\n      <th>4</th>\n      <td>A4</td>\n      <td>B4</td>\n      <td>C4</td>\n      <td>D4</td>\n    </tr>\n  </tbody>\n</table>\n</div>"
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": "    B   C   D   E\n2  B2  C2  D2  E2\n3  B3  C3  D3  E3\n4  B4  C4  D4  E4\n5  B5  C5  D5  E5",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>B</th>\n      <th>C</th>\n      <th>D</th>\n      <th>E</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>2</th>\n      <td>B2</td>\n      <td>C2</td>\n      <td>D2</td>\n      <td>E2</td>\n    </tr>\n    <tr>\n      <th>3</th>\n      <td>B3</td>\n      <td>C3</td>\n      <td>D3</td>\n      <td>E3</td>\n    </tr>\n    <tr>\n      <th>4</th>\n      <td>B4</td>\n      <td>C4</td>\n      <td>D4</td>\n      <td>E4</td>\n    </tr>\n    <tr>\n      <th>5</th>\n      <td>B5</td>\n      <td>C5</td>\n      <td>D5</td>\n      <td>E5</td>\n    </tr>\n  </tbody>\n</table>\n</div>"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df3 = make_df([1, 2, 3, 4], ['A', 'B', 'C', 'D'])\n",
    "df4 = make_df([2, 3, 4, 5], ['B', 'C', 'D', 'E'])\n",
    "display(df3, df4)\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "C:\\Users\\Administrator\\AppData\\Local\\Temp\\ipykernel_13380\\2050300803.py:1: FutureWarning: The frame.append method is deprecated and will be removed from pandas in a future version. Use pandas.concat instead.\n",
      "  df3.append(df4)\n",
      "C:\\Users\\Administrator\\AppData\\Local\\Temp\\ipykernel_13380\\2050300803.py:2: FutureWarning: The frame.append method is deprecated and will be removed from pandas in a future version. Use pandas.concat instead.\n",
      "  df3.append(df4)\n"
     ]
    },
    {
     "data": {
      "text/plain": "     A   B   C   D    E\n1   A1  B1  C1  D1  NaN\n2   A2  B2  C2  D2  NaN\n3   A3  B3  C3  D3  NaN\n4   A4  B4  C4  D4  NaN\n2  NaN  B2  C2  D2   E2\n3  NaN  B3  C3  D3   E3\n4  NaN  B4  C4  D4   E4\n5  NaN  B5  C5  D5   E5",
      "text/html": "<div>\n<style scoped>\n    .dataframe tbody tr th:only-of-type {\n        vertical-align: middle;\n    }\n\n    .dataframe tbody tr th {\n        vertical-align: top;\n    }\n\n    .dataframe thead th {\n        text-align: right;\n    }\n</style>\n<table border=\"1\" class=\"dataframe\">\n  <thead>\n    <tr style=\"text-align: right;\">\n      <th></th>\n      <th>A</th>\n      <th>B</th>\n      <th>C</th>\n      <th>D</th>\n      <th>E</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>1</th>\n      <td>A1</td>\n      <td>B1</td>\n      <td>C1</td>\n      <td>D1</td>\n      <td>NaN</td>\n    </tr>\n    <tr>\n      <th>2</th>\n      <td>A2</td>\n      <td>B2</td>\n      <td>C2</td>\n      <td>D2</td>\n      <td>NaN</td>\n    </tr>\n    <tr>\n      <th>3</th>\n      <td>A3</td>\n      <td>B3</td>\n      <td>C3</td>\n      <td>D3</td>\n      <td>NaN</td>\n    </tr>\n    <tr>\n      <th>4</th>\n      <td>A4</td>\n      <td>B4</td>\n      <td>C4</td>\n      <td>D4</td>\n      <td>NaN</td>\n    </tr>\n    <tr>\n      <th>2</th>\n      <td>NaN</td>\n      <td>B2</td>\n      <td>C2</td>\n      <td>D2</td>\n      <td>E2</td>\n    </tr>\n    <tr>\n      <th>3</th>\n      <td>NaN</td>\n      <td>B3</td>\n      <td>C3</td>\n      <td>D3</td>\n      <td>E3</td>\n    </tr>\n    <tr>\n      <th>4</th>\n      <td>NaN</td>\n      <td>B4</td>\n      <td>C4</td>\n      <td>D4</td>\n      <td>E4</td>\n    </tr>\n    <tr>\n      <th>5</th>\n      <td>NaN</td>\n      <td>B5</td>\n      <td>C5</td>\n      <td>D5</td>\n      <td>E5</td>\n    </tr>\n  </tbody>\n</table>\n</div>"
     },
     "execution_count": 20,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df3.append(df4)\n"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 0
}